home *** CD-ROM | disk | FTP | other *** search
/ FishMarket 1.0 / FishMarket v1.0.iso / fishies / 076-100 / disk_096 / tek4695 / wait.asm < prev   
Assembly Source File  |  1992-05-06  |  1KB  |  76 lines

  1.     section printer
  2.     include    'exec/types.i'
  3.     include    'exec/ports.i'
  4.     include    'exec/devices.i'
  5.     include    'exec/io.i'
  6.     include    'devices/timer.i'
  7.  
  8. XREF_EXE    MACRO
  9.     XREF    _LVO\1
  10.     ENDM
  11. XREF_DOS    MACRO
  12.     XREF    _LVO\1
  13.     ENDM
  14. XREF_GFX    MACRO
  15.     XREF    _LVO\1
  16.     ENDM
  17. XREF_ITU    MACRO
  18.     XREF    _LVO\1
  19.     ENDM
  20.  
  21. CALLEXE    MACRO
  22.     CALLLIB    _LVO\1
  23.     ENDM
  24.  
  25. LINKEXE    MACRO
  26.     LINKLIB    _LVO\1,_SysBase
  27.     ENDM
  28.  
  29. LINKDOS    MACRO
  30.     LINKLIB    _LVO\1,_DOSBase
  31.     ENDM
  32.  
  33. LINKGFX    MACRO
  34.     LINKLIB    _LVO\1,_GfxBase
  35.     ENDM
  36.  
  37. LINKITU    MACRO
  38.     LINKLIB    _LVO\1,_IntuitionBase
  39.     ENDM
  40.  
  41.     INCLUDE    'devices/prtbase.i'
  42.     XREF_EXE    Forbid
  43.     XREF_EXE    Permit
  44.     XREF_EXE    WaitIO
  45.     XREF    _SysBase
  46.  
  47.     XREF    _PD
  48.  
  49.     XDEF    _PWait
  50.  
  51. _PWait:
  52.     movem.l    a4/a6,-(a7)
  53.     move.l    _PD,a4
  54.     move.l    pd_PBothReady(a4),a0
  55.     jsr    (a0)
  56.     tst.l    d0
  57.     bne.s    error
  58.  
  59.     lea    pd_TIOR(a4),a1
  60.     move.w    #TR_ADDREQUEST,IO_COMMAND(a1)
  61.     move.l    12(a7),IOTV_TIME+TV_SECS(a1)
  62.     move.l    16(a7),IOTV_TIME+TV_MICRO(a1)
  63.     clr.b    IO_FLAGS(a1)
  64.     move.l    IO_DEVICE(a1),a6
  65.     jsr    DEV_BEGINIO(a6)
  66.     LINKEXE    Forbid
  67.     lea    pd_TIOR(a4),a1
  68.     LINKEXE    WaitIO
  69.     LINKEXE    Permit
  70.     moveq    #0,d0
  71.     tst.l    d0
  72. error:
  73.     movem.l    (a7)+,a4/a6
  74.     rts
  75.     end
  76.